package thinkingJava.chapter15;

class GenericBase<T> {
	private T element;
	public void set(T x) {
		element = x;
	}
	public T get() {
		return element;
	}
}
class Derived1<T> extends GenericBase<T>{}
class Derived2 extends GenericBase{}
public class ErasureAndInheritance {

	@SuppressWarnings("unchecked")
	public static void main(String[] args) {
		Derived2 d2 = new Derived2();
		Object obj = d2.get();
		d2.set(obj);
	}
}
